<?php

namespace app\utils\ui\ele;

use app\utils\ui\UIView;
use app\utils\ui\vue\VueFormItem;
use app\utils\ui\VueView;

class Upload extends VueFormItem implements VueView{

    /**
     * 请求成功
     */
    public const onSuccess=':on-success';

    
    /**
     * 请求失败
     */
    public const onError=':on-error';


    /**
     * @param string $vmodel 字段
     * @param string $vmodel_value 字段值
     * @param array|UIView $child
     * @param array|Closure $attr
     */
    public function __construct($vmodel,$vmodel_value,$child,$attr) 
    {
        parent::__construct($vmodel,$vmodel_value,$attr,$child);
    }
    
    public function render(){
        return parent::base_render('el-upload');
    }

    /**
     * 保存此组件上传的内容（文件流的内容）
     * @param string $dir 文件夹
     * @param string $name 文件名（包含扩展名）
     */
    public static function save($dir,$name){
        $file = request()->file('file');
        $file->move($dir,$name);

    }
    
}